zz_

test/isPrime.test.js

zzmq.dev@gmail.com[dev3]/mathkit[add-mean-numbers-function-returns] / test / isPrime.test.js @ af4e36ae Download
Ladder Summary
  • file Contains node:test unit tests for isPrime, verifying correct true results for known primes, false results for composites, edge cases, negative numbers, zero, one, non‑integers, NaN and infinite values.
 import { test } from "node:test";
 import assert from "node:assert/strict";
 import { isPrime } from "../src/isPrime.js";
 
 test("isPrime correctly identifies prime numbers", () => {
  assert.strictEqual(isPrime(2), true);
  assert.strictEqual(isPrime(3), true);
  assert.strictEqual(isPrime(5), true);
  assert.strictEqual(isPrime(7), true);
  assert.strictEqual(isPrime(11), true);
  assert.strictEqual(isPrime(13), true);
  assert.strictEqual(isPrime(17), true);
  assert.strictEqual(isPrime(19), true);
 });
 
 test("isPrime correctly identifies non‑prime numbers", () => {
  assert.strictEqual(isPrime(1), false);
  assert.strictEqual(isPrime(0), false);
  assert.strictEqual(isPrime(-5), false);
  assert.strictEqual(isPrime(4), false);
  assert.strictEqual(isPrime(6), false);
  assert.strictEqual(isPrime(9), false);
  assert.strictEqual(isPrime(15), false);
 });
 
 test("isPrime returns false for non‑integers and special numbers", () => {
  assert.strictEqual(isPrime(2.5), false);
  assert.strictEqual(isPrime(NaN), false);
  assert.strictEqual(isPrime(Infinity), false);
  assert.strictEqual(isPrime(-Infinity), false);
 });